草庐IT

Swift 枚举评估

全部标签

c# - 是否可以在 C# 中使用作为关键字的值定义枚举?

我有一些正在读取的客户端数据,我已经为其中一个值定义了一个枚举,所以我可以使用Enum.Parse(type,somestring)。问题是他们刚刚添加了一个新值:“public”。是否可以定义一个也是保留字的枚举值?即:publicenumMyEnum{SomeVal,SomeOtherVal,public,YouGetTheIdea}如果没有,我想我会改写一个解析方法。 最佳答案 您可以在变量名前加上一个@。这允许您使用关键字作为变量名-所以@public。参见here.来自C#spec:Theprefix"@"enablest

c# - 如何防止枚举中的重复值?

我想知道有没有办法阻止具有重复键的enum编译?例如下面的这个enum将编译publicenumEDuplicates{Unique,Duplicate=0,Keys=1,Compilation=1}虽然这段代码Console.WriteLine(EDuplicates.Unique);Console.WriteLine(EDuplicates.Duplicate);Console.WriteLine(EDuplicates.Keys);Console.WriteLine(EDuplicates.Compilation);将打印DuplicateDuplicateKeysKeys

c# - 将 xml 值映射到枚举类型

我需要将从第三方获取的XML文件解析为C#对象。我收到的一些XML具有枚举值,我想将其存储在枚举类型中。例如,我有如下xml文件的xsd:我想将它映射到一个枚举,我做到了这一点:publicenumFuel{B,D,L,E,H,C,O}我遇到的问题是xml可以包含3的值,我似乎无法将其放入枚举类型中。是否有任何解决方案可以将此值放入枚举中。我还可以获得其他带有-或/的值,我想将其放入枚举类型中。欢迎Anu建议! 最佳答案 用XmlEnum属性装饰:http://msdn.microsoft.com/en-us/library/sys

c# - 如何让 EF Core 数据库首先使用枚举?

我将EFCore与数据库优先方法结合使用,使用“Scaffold-DbContext”命令生成我的DbContext/实体。我如何指示Scaffold-DbContext某个表中的某个字段应该生成代码以使用Enum而不仅仅是int?这就是您过去在常规EF中的做法:https://www.devu.com/cs-asp/lesson-69-mapping-enum-types-entity-properties-framework-designer/例子此枚举已在代码中定义:publicenumStateEnum{Ok=1,Fail=2}这就是Scaffold-DbContext给我的东

c# - 为枚举元素分配多个值

嗨,我目前有这个枚举[Serializable]publicenumCountry{US=1,Canada=2,}当我通常从数据库中获取整数时,我会使用将其转换为枚举(Country)Convert.ToInt32("1")我现在在美国和加拿大有2个子区域,美国1和2,加拿大3和4。所以当我这样做的时候(Country)Convert.ToInt32("1")或(Country)Convert.ToInt32("2")我应该让枚举成为美国。以及3和4加拿大。我该如何实现?[Serializable]publicenumCountry{US=1,2Canada=3,4}是这样的。这可能不

c# - 在 C# 中扩展枚举

在java中,我习惯于扩展枚举值或覆盖这样的方法:enumSomeEnum{option1("sv"){publicStringtoString(){return"Somevalue";}},option2;privateStringPassedValue;publicSomeEnum(Stringsomevalue){this.PassedValue=somevalue;}publicSomeEnum(){this.PassedValue="DefaultValue";}publicStringgetPassedValue(){returnthis.PassedValue;}}有没有

c# - WCF 跟踪上未找到配置评估上下文警告

我有一组托管在.NET4应用程序上的WCF服务。我手动创建ServiceHost类并开始监听TCP端口。一切都按预期工作,但在服务器端的WCF跟踪中,我收到以下警告。未找到配置评估上下文。XML跟踪如下:524312304BAROLOhttp://msdn.microsoft.com/it-IT/library/System.ServiceModel.EvaluationContextNotFound.aspxConfigurationevaluationcontextnotfound.Server.Console.vshost.exe知道警​​告的原因吗?谢谢

c# - 一种解析带有 'Flags' 的 .NET 枚举字符串或 int 值的方法

有一种使用以下方法计算枚举元素的好方法://memberTypeisenumtypeif(Enum.IsDefined(memberType,valueString)){returnEnum.Parse(memberType,valueString);}else{try{varunderlyingValue=Convert.ChangeType(valueString,Enum.GetUnderlyingType(memberType));if(Enum.IsDefined(memberType,underlyingValue)){returnunderlyingValue;}}cat

c# - 如何在 c# xml 文档中引用枚举常量

我想记录枚举类型字段的默认值://////Thedefaultvalueis.///publicOrientationBoxOrientation;编译器警告它无法解析引用。前缀F:或M:会使编译器静音,但E:也会静音,所以我不确定哪个前缀是正确的。 最佳答案 前缀F、M和E都是有效的,可能是编译器警告消失的原因。不过,您应该使用引用字段的F。有关VisualStudio如何生成文档标识符的更多信息,请参阅:ProcessingtheXMLFile(C#ProgrammingGuide)

c# - 在具有多个对应名称的枚举值上调用 ToString() 时,什么决定选择哪个名称?

在具有多个对应名称的enum值上调用ToString()时,什么决定选择哪个名称?问题的详细解释如下。我已经确定这不是由以下任何一个唯一确定的:字母顺序;申报单;也不,名称长度。例如,假设我想要一个枚举,其中数值直接对应于实际用途(例如颜色的rgb值)。publicenumRgbColor{Black=0x000000,Red=0xff0000,Green=0x00ff00,Blue=0x0000ff,White=0xffffff}现在,使用此枚举,调用default(RgbColor)将返回黑色的rgb值。假设我不希望默认值为黑色,因为我希望UI设计人员在没有关于使用什么颜色的具体说